前五天陸續水了六種程式設計範式,統整如下
程式設計範式 | 解決的問題 | 設計理念 |
---|---|---|
程序式 | 無,最傳統的程式碼寫作方式 | |
結構化 | 流程控制混亂 | 禁用 goto |
物件導向 | 流程與資料混雜 | 封裝、繼承、多型、DRY |
切面導向 | 主要流程與輔助功能混雜 | 關注點分離、切面、切入點 |
函數式 | 難以在開發階段進行邏輯推理驗證 | 不可變動性、型別安全、純函式 |
響應式 | 難以處理資料流與非同步事件 | 可觀察性、事件驅動、推播、訂閱 |
Premature optimization is the root of all evil
過早優化是萬惡之源
Premature generalization is the root of all evil.
過早泛用化是萬惡之源
以上只是筆者我認識的六種,不代表全部。另外再次提醒雖然他們看起來一個比一個厲害,但是千萬不要求好心切,一下子把他們通通塞到同一個專案裡面。建議可以採用漸進式的方式,局部的嘗試使用,如果自己感覺程式碼變好讀、寫起來舒服,而且夥伴們也有同感,那大概就沒問題了~